<p>给你两个数组：<code>instructions</code> 和 <code>values</code>，数组的长度均为 <code>n</code>。</p>

<p>你需要根据以下规则模拟一个过程：</p>

<ul>
	<li>从下标&nbsp;<code>i = 0</code> 的第一个指令开始，初始得分为 0。</li>
	<li>如果 <code>instructions[i]</code> 是 <code>"add"</code>：
	<ul>
		<li>将 <code>values[i]</code> 加到你的得分中。</li>
		<li>移动到下一个指令 <code>(i + 1)</code>。</li>
	</ul>
	</li>
	<li>如果 <code>instructions[i]</code> 是 <code>"jump"</code>：
	<ul>
		<li>移动到下标为&nbsp;<code>(i + values[i])</code> 的指令，但不修改你的得分。</li>
	</ul>
	</li>
</ul>

<p>当以下任一情况发生时，过程会终止：</p>

<ul>
	<li>越界（即 <code>i &lt; 0</code> 或 <code>i &gt;= n</code>），或</li>
	<li>尝试再次执行已经执行过的指令。被重复访问的指令不会再次执行。</li>
</ul>

<p>返回过程结束时的得分。</p>

<p>&nbsp;</p>

<p><strong class="example">示例 1：</strong></p>

<div class="example-block">
<p><strong>输入：</strong> <span class="example-io">instructions = ["jump","add","add","jump","add","jump"], values = [2,1,3,1,-2,-3]</span></p>

<p><strong>输出：</strong> <span class="example-io">1</span></p>

<p><strong>解释：</strong></p>

<p>从下标&nbsp;0 开始模拟过程：</p>

<ul>
	<li>下标 0：指令是 <code>"jump"</code>，移动到下标&nbsp;<code>0 + 2 = 2</code>。</li>
	<li>下标 2：指令是 <code>"add"</code>，将 <code>values[2] = 3</code> 加到得分中，移动到下标&nbsp;3。得分变为 3。</li>
	<li>下标 3：指令是 <code>"jump"</code>，移动到下标&nbsp;<code>3 + 1 = 4</code>。</li>
	<li>下标 4：指令是 <code>"add"</code>，将 <code>values[4] = -2</code> 加到得分中，移动到下标&nbsp;5。得分变为 1。</li>
	<li>下标 5：指令是 <code>"jump"</code>，移动到下标&nbsp;<code>5 + (-3) = 2</code>。</li>
	<li>下标 2：已经访问过。过程结束。</li>
</ul>
</div>

<p><strong class="example">示例 2：</strong></p>

<div class="example-block">
<p><strong>输入：</strong> <span class="example-io">instructions = ["jump","add","add"], values = [3,1,1]</span></p>

<p><strong>输出：</strong> <span class="example-io">0</span></p>

<p><strong>解释：</strong></p>

<p>从下标&nbsp;0 开始模拟过程：</p>

<ul>
	<li>下标 0：指令是 <code>"jump"</code>，移动到下标&nbsp;<code>0 + 3 = 3</code>。</li>
	<li>下标 3：越界。过程结束。</li>
</ul>
</div>

<p><strong class="example">示例 3：</strong></p>

<div class="example-block">
<p><strong>输入：</strong> <span class="example-io">instructions = ["jump"], values = [0]</span></p>

<p><strong>输出：</strong> <span class="example-io">0</span></p>

<p><strong>解释：</strong></p>

<p>从下标&nbsp;0 开始模拟过程：</p>

<ul>
	<li>下标 0：指令是 <code>"jump"</code>，移动到下标&nbsp;<code>0 + 0 = 0</code>。</li>
	<li>下标 0：已经访问过。过程结束。</li>
</ul>
</div>

<p>&nbsp;</p>

<p><strong>提示：</strong></p>

<ul>
	<li><code>n == instructions.length == values.length</code></li>
	<li><code>1 &lt;= n &lt;= 10<sup>5</sup></code></li>
	<li><code>instructions[i]</code> 只能是 <code>"add"</code> 或 <code>"jump"</code>。</li>
	<li><code>-10<sup>5</sup> &lt;= values[i] &lt;= 10<sup>5</sup></code></li>
</ul>
